<html>
<head><meta charset="utf-8"><title>meeting 2019.10.01 · t-compiler/wg-polonius · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/index.html">t-compiler/wg-polonius</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html">meeting 2019.10.01</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="177086767"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177086767" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177086767">(Oct 01 2019 at 19:00)</a>:</h4>
<p>hello :)</p>



<a name="177086831"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177086831" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177086831">(Oct 01 2019 at 19:01)</a>:</h4>
<p>/me hides in shame, because he hasn't had any time for polonius lately</p>



<a name="177086839"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177086839" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177086839">(Oct 01 2019 at 19:01)</a>:</h4>
<p>:)</p>



<a name="177086872"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177086872" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177086872">(Oct 01 2019 at 19:02)</a>:</h4>
<p>this week Matthew made this cool PR <a href="https://github.com/rust-lang/rust/pull/64749" target="_blank" title="https://github.com/rust-lang/rust/pull/64749">https://github.com/rust-lang/rust/pull/64749</a></p>



<a name="177086938"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177086938" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177086938">(Oct 01 2019 at 19:02)</a>:</h4>
<p>which fixes the last failure in the test suite (not the OOMs)</p>



<a name="177086964"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177086964" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177086964">(Oct 01 2019 at 19:02)</a>:</h4>
<blockquote>
<p>/me hides in shame, because he hasn't had any time for polonius lately</p>
</blockquote>
<p>SAME</p>



<a name="177087064"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087064" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087064">(Oct 01 2019 at 19:03)</a>:</h4>
<p>computing which things outlive free regions as a liveness optimization is interesting since liveness is also done in polonius</p>



<a name="177087157"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087157" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087157">(Oct 01 2019 at 19:04)</a>:</h4>
<p>I wonder if that affects things or not, speed-wise</p>



<a name="177087190"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087190" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087190">(Oct 01 2019 at 19:04)</a>:</h4>
<p>at least reducing the number of variables we compute liveness in polonius, I think ?</p>



<a name="177087242"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087242" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087242">(Oct 01 2019 at 19:05)</a>:</h4>
<p>I think liveness is sort of computed before regions/origins/provenances enters into the equation</p>



<a name="177087276"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087276" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087276">(Oct 01 2019 at 19:05)</a>:</h4>
<p>there seems to be an NLL fix in there as well, even though the PR text only mentions Polonius, but I could be interpreting things wrong</p>



<a name="177087357"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087357" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087357">(Oct 01 2019 at 19:06)</a>:</h4>
<p>So the main point of optimisation should probably be to stop computing liveness for variables that are neither structs with (structs with...) references or holding references themselves</p>



<a name="177087373"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087373" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087373">(Oct 01 2019 at 19:06)</a>:</h4>
<p>Or, not to even emit those into Polonius in the first place</p>



<a name="177087404"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087404" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087404">(Oct 01 2019 at 19:06)</a>:</h4>
<p>some of this is done in rustc but was disabled because it broke polonius</p>



<a name="177087418"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087418" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087418">(Oct 01 2019 at 19:07)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> Is this in the "test difference" PR you mean?</p>



<a name="177087426"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087426" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087426">(Oct 01 2019 at 19:07)</a>:</h4>
<p>Or are you referring to some other PR?</p>



<a name="177087430"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087430" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087430">(Oct 01 2019 at 19:07)</a>:</h4>
<p>So NLL does this same optimization</p>



<a name="177087432"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087432" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087432">(Oct 01 2019 at 19:07)</a>:</h4>
<p>basically for the same reason</p>



<a name="177087444"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087444" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087444">(Oct 01 2019 at 19:07)</a>:</h4>
<p>this PR re-enables it (now that I think liveness takes care of that)</p>



<a name="177087453"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087453" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087453">(Oct 01 2019 at 19:07)</a>:</h4>
<p>Aaah ok</p>



<a name="177087460"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087460" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087460">(Oct 01 2019 at 19:07)</a>:</h4>
<p>Cool!</p>



<a name="177087484"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087484" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087484">(Oct 01 2019 at 19:07)</a>:</h4>
<p>and at the same time fixes the overflow in generating drop facts during fact generation</p>



<a name="177087520"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087520" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087520">(Oct 01 2019 at 19:08)</a>:</h4>
<p>I sort of imaged that eventually we would want to do this analysis <em>in</em> polonius</p>



<a name="177087540"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087540" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087540">(Oct 01 2019 at 19:08)</a>:</h4>
<p>(but I think it makes sense to do in rustc for now, and maybe forever)</p>



<a name="177087541"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087541" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087541">(Oct 01 2019 at 19:08)</a>:</h4>
<p>(which is what you and Matthew talked about before Albin IIRC)</p>



<a name="177087577"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087577" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087577">(Oct 01 2019 at 19:08)</a>:</h4>
<p>yeah, or maybe rustc and polonius would need to have a more interactive dialog when computing, to limit the number of facts to generate, etc</p>



<a name="177087601"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087601" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087601">(Oct 01 2019 at 19:09)</a>:</h4>
<p>as for me, I've opened another inconsequential PR just to clean up some of the profiling data I had, and where interning in the polonius-bin was dominating the results</p>



<a name="177087605"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087605" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087605">(Oct 01 2019 at 19:09)</a>:</h4>
<p>right, we might ship over some initial set of facts, etc</p>



<a name="177087613"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087613" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087613">(Oct 01 2019 at 19:09)</a>:</h4>
<p>my one announcement is</p>



<a name="177087621"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087621" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087621">(Oct 01 2019 at 19:09)</a>:</h4>
<p>I intend to start work in earnest on my RBR presentation this week</p>



<a name="177087650"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087650" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087650">(Oct 01 2019 at 19:09)</a>:</h4>
<p>so maybe I'll try to draft some of you into suffering through a dry run or two</p>



<a name="177087659"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087659" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087659">(Oct 01 2019 at 19:10)</a>:</h4>
<p>awesome</p>



<a name="177087723"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087723" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087723">(Oct 01 2019 at 19:10)</a>:</h4>
<p>we'll see how much detail I want to do...</p>



<a name="177087725"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087725" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087725">(Oct 01 2019 at 19:10)</a>:</h4>
<p>and also worked on generalizing the "interesting"-ness filtering by transforming the naive rules à la magic sets to be demand driven (there's some talk about that in another thread)</p>



<a name="177087774"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087774" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087774">(Oct 01 2019 at 19:10)</a>:</h4>
<p>I've implemented these in datafrog (painful) but doesn't quite work yet (and maybe is flawed)</p>



<a name="177087808"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087808" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087808">(Oct 01 2019 at 19:11)</a>:</h4>
<p>writing the rules being painful made me try to do a datalog to datafrog compiler as I mentioned there</p>



<a name="177087851"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087851" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087851">(Oct 01 2019 at 19:11)</a>:</h4>
<p>so I have a tiny prototype of this, it doesn't setup data/relations/indices but can generate the (regular, not leapjoins) join/anti/map calls, etc</p>



<a name="177087926"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087926" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087926">(Oct 01 2019 at 19:12)</a>:</h4>
<p>and obviously do the DT (Demand Transformation) from subsumtive tabling paper/thesis</p>



<a name="177087949"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087949" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087949">(Oct 01 2019 at 19:12)</a>:</h4>
<p>(which seemed to work on the examples form the paper, but maybe not for us)</p>



<a name="177087963"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177087963" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177087963">(Oct 01 2019 at 19:13)</a>:</h4>
<p>woah</p>



<a name="177088004"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088004" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088004">(Oct 01 2019 at 19:13)</a>:</h4>
<p>...that was kind of my reaction too</p>



<a name="177088018"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088018" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088018">(Oct 01 2019 at 19:13)</a>:</h4>
<p>I've also worked on the OOMs just by emitting the materialized outlives on a different relation (à la <code>outlives_everywhere</code> but didn't modify the rules to take that into account)</p>



<a name="177088088"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088088" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088088">(Oct 01 2019 at 19:14)</a>:</h4>
<p>I don't know if it's the right solution but at least I saw that a lot of those were <code>equal</code> as we assumed :)</p>



<a name="177088104"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088104" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088104">(Oct 01 2019 at 19:14)</a>:</h4>
<p>haha &lt;3</p>



<a name="177088116"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088116" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Tshepang Lekhonkhobe <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088116">(Oct 01 2019 at 19:14)</a>:</h4>
<blockquote>
<p>I intend to start work in earnest on my RBR presentation this week</p>
</blockquote>
<p>wasn't aware there's a polonius talk... looking forward to it <a href="https://rust-belt-rust.com/sessions/#polonius" target="_blank" title="https://rust-belt-rust.com/sessions/#polonius">https://rust-belt-rust.com/sessions/#polonius</a></p>



<a name="177088293"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088293" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088293">(Oct 01 2019 at 19:16)</a>:</h4>
<p>I'm feeling doubtful with the flow-sensitive equality, I might be missing something but it might be hard to make it perform acceptably</p>



<a name="177088311"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088311" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088311">(Oct 01 2019 at 19:16)</a>:</h4>
<p>very exciting</p>



<a name="177088312"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088312" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088312">(Oct 01 2019 at 19:16)</a>:</h4>
<p>as I was saying in the <a href="#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/equality.20regions/near/176521909" title="#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/equality.20regions/near/176521909">dedicated topic</a></p>



<a name="177088336"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088336" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088336">(Oct 01 2019 at 19:17)</a>:</h4>
<p>I plan to spent this afternoon reviewing, so I'll review <span class="user-mention" data-user-id="116118">@Matthew Jasper</span>'s PR, but let me know if there are other things that are more-or-less urgnt</p>



<a name="177088349"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088349" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088349">(Oct 01 2019 at 19:17)</a>:</h4>
<blockquote>
<p>very exciting</p>
</blockquote>
<p>what is exciting ?</p>



<a name="177088429"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088429" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088429">(Oct 01 2019 at 19:18)</a>:</h4>
<p>just all your updates :)</p>



<a name="177088439"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088439" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088439">(Oct 01 2019 at 19:18)</a>:</h4>
<p>that typing came a bit late / out-of-sync with the rest of the conversation, sorry</p>



<a name="177088448"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088448" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088448">(Oct 01 2019 at 19:18)</a>:</h4>
<blockquote>
<p>I'm feeling doubtful with the flow-sensitive equality, I might be missing something but it might be hard to make it perform acceptably</p>
</blockquote>
<p>I left some replies in the topic, but this definitely merits more work</p>



<a name="177088456"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088456" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088456">(Oct 01 2019 at 19:18)</a>:</h4>
<p>there are a couple PRs to review in the polonius repo if you have some time (but probably more interesting ones already waiting on rustc :) like the renaming we mentioned seems done, etc</p>



<a name="177088464"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088464" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088464">(Oct 01 2019 at 19:18)</a>:</h4>
<p>argh yeah</p>



<a name="177088467"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088467" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088467">(Oct 01 2019 at 19:18)</a>:</h4>
<p>ok</p>



<a name="177088479"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088479" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088479">(Oct 01 2019 at 19:19)</a>:</h4>
<p>I've got to see if I can dedicate at least an hour a week to polonius</p>



<a name="177088485"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088485" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088485">(Oct 01 2019 at 19:19)</a>:</h4>
<p>seems like I should be able to squeeze that from <em>somewhere</em> :)</p>



<a name="177088488"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088488" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088488">(Oct 01 2019 at 19:19)</a>:</h4>
<p>nothing major in any case</p>



<a name="177088496"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088496" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088496">(Oct 01 2019 at 19:19)</a>:</h4>
<p>()but prob not till after RBR)</p>



<a name="177088533"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088533" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088533">(Oct 01 2019 at 19:19)</a>:</h4>
<p>hopefully I'll have made more progress by then to have at least some things to review</p>



<a name="177088604"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088604" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088604">(Oct 01 2019 at 19:20)</a>:</h4>
<p>there were some other datafrog-related things I mentioned in another dedicated topic, but I forgot if I haven't mentioned this last meeting tbh :)</p>



<a name="177088640"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088640" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088640">(Oct 01 2019 at 19:21)</a>:</h4>
<p>I think you didn't, at least not the code generation stuff</p>



<a name="177088666"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088666" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088666">(Oct 01 2019 at 19:21)</a>:</h4>
<p>ah yes, mostly I meant the specialized relations we could do for our use-cases</p>



<a name="177088697"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088697" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088697">(Oct 01 2019 at 19:22)</a>:</h4>
<p>eg bitsets/bloom filters for the <code>killed</code> relations etc</p>



<a name="177088753"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088753" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088753">(Oct 01 2019 at 19:22)</a>:</h4>
<p>Ah, I don't recall you mentioning them</p>



<a name="177088763"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088763" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088763">(Oct 01 2019 at 19:22)</a>:</h4>
<p>But I might have just forgotten :)</p>



<a name="177088791"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088791" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088791">(Oct 01 2019 at 19:22)</a>:</h4>
<p>if anyone feels adventurous, they were <a href="#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/notes.20on.20datafrog" title="#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/notes.20on.20datafrog">here</a></p>



<a name="177088816"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088816" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088816">(Oct 01 2019 at 19:23)</a>:</h4>
<p>and I think that's pretty much it :)</p>



<a name="177088818"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088818" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088818">(Oct 01 2019 at 19:23)</a>:</h4>
<p>/me has been saving those for when he has a bit of time to read :)</p>



<a name="177088828"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088828" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088828">(Oct 01 2019 at 19:23)</a>:</h4>
<p>I guess when I finally start working on initialisation, I should start after the great renaming?</p>



<a name="177088846"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088846" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088846">(Oct 01 2019 at 19:23)</a>:</h4>
<p>I.e. merging the pull requests on my fork and going from there</p>



<a name="177088933"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088933" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088933">(Oct 01 2019 at 19:24)</a>:</h4>
<p>this week I plan on finishing this tiny compiler so that writing rules is a bit easier, hopefully looking into demand-transformed rules and why they don't always work (and if that's a flaw in the approach or my derivation)</p>



<a name="177088968"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177088968" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177088968">(Oct 01 2019 at 19:24)</a>:</h4>
<p>yeah I think so Albin, it's "just" needs reviewing/discussing otherwise</p>



<a name="177089005"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089005" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089005">(Oct 01 2019 at 19:25)</a>:</h4>
<p>Ok, so with any luck I will find some time to work on initialisation</p>



<a name="177089038"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089038" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089038">(Oct 01 2019 at 19:25)</a>:</h4>
<p>but it might create annoyances otherwise; at least it's not blocking on the "what to do" part, more so the specifics of the code could have conflicts</p>



<a name="177089135"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089135" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089135">(Oct 01 2019 at 19:26)</a>:</h4>
<blockquote>
<p>this week I plan on finishing this tiny compiler so that writing rules is a bit easier, hopefully looking into demand-transformed rules and why they don't always work (and if that's a flaw in the approach or my derivation)</p>
</blockquote>
<p>where is this compiler living?</p>



<a name="177089137"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089137" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089137">(Oct 01 2019 at 19:26)</a>:</h4>
<p>and how do you invoke it?</p>



<a name="177089162"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089162" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089162">(Oct 01 2019 at 19:27)</a>:</h4>
<p>I'd also like to see if the non-OOMy facts could easily map to the <code>equal</code> variant</p>



<a name="177089203"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089203" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089203">(Oct 01 2019 at 19:27)</a>:</h4>
<p>right now it's a just a function in my polonius-bin repo</p>



<a name="177089270"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089270" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089270">(Oct 01 2019 at 19:28)</a>:</h4>
<p>which is being invoked with a string of the rules, and it prints out the analysis and some rust code on stdout :p</p>



<a name="177089328"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089328" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089328">(Oct 01 2019 at 19:28)</a>:</h4>
<p>a bit <em>artisanal</em></p>



<a name="177089338"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089338" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089338">(Oct 01 2019 at 19:29)</a>:</h4>
<p>ah ok :)</p>



<a name="177089348"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089348" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089348">(Oct 01 2019 at 19:29)</a>:</h4>
<p>might eventually make a nice addition to datafrog, as a procedural macro or something</p>



<a name="177089356"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089356" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089356">(Oct 01 2019 at 19:29)</a>:</h4>
<p>yeah</p>



<a name="177089371"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089371" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089371">(Oct 01 2019 at 19:29)</a>:</h4>
<p>even though as I mentioned before maybe a proc macro would hide the real code too much</p>



<a name="177089388"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089388" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089388">(Oct 01 2019 at 19:29)</a>:</h4>
<p>seeing how often we try to optimize said code, removing indices, etc</p>



<a name="177089491"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089491" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089491">(Oct 01 2019 at 19:30)</a>:</h4>
<p>maybe if I could spit a super query plan or something, but that seems unlikely</p>



<a name="177089524"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089524" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089524">(Oct 01 2019 at 19:30)</a>:</h4>
<p>as it's suuuuuuuper hard and long to do :)</p>



<a name="177089579"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089579" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089579">(Oct 01 2019 at 19:31)</a>:</h4>
<p>it shouldn't be too hard to get into a PR in the next couple weeks I think</p>



<a name="177089670"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089670" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089670">(Oct 01 2019 at 19:32)</a>:</h4>
<p>(at least it could help a bit with prototyping rules, etc, more so than generating a perfectly formed computation one need not touch anymore)</p>



<a name="177089702"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089702" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089702">(Oct 01 2019 at 19:33)</a>:</h4>
<p>if anyone has something else to add we're just on the 30mins mark :)</p>



<a name="177089729"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089729" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089729">(Oct 01 2019 at 19:33)</a>:</h4>
<p>thanks <span class="user-mention" data-user-id="116113">@lqd</span></p>



<a name="177089748"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089748" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089748">(Oct 01 2019 at 19:33)</a>:</h4>
<blockquote>
<p>even though as I mentioned before maybe a proc macro would hide the real code too much</p>
</blockquote>
<p>yeah this is why I've figured we'd hold off on those until now, but maybe we can get it smart enough</p>



<a name="177089771"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089771" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089771">(Oct 01 2019 at 19:33)</a>:</h4>
<p>yeah</p>



<a name="177089819"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.10.01/near/177089819" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E10.2E01.html#177089819">(Oct 01 2019 at 19:34)</a>:</h4>
<p>ah but thank <em>you</em> all for your time :) <span aria-label="wave" class="emoji emoji-1f44b" role="img" title="wave">:wave:</span></p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>